Nodes of a local area network (LAN) are typically interconnected by a shared transmission medium. The amount of data traffic that the shared transmission medium can accommodate, however, is limited. For example, only one node at a time can successfully transmit data to another node over the shared transmission medium. If two or more nodes simultaneously attempt to transmit data, a data collision occurs, which tends to corrupt the data being transmitted. Thus, nodes that share a transmission medium are considered to be in a same collision domain.
A multi-port bridge allows simultaneous communication between nodes of the LAN by segmenting the LAN into multiple collision domains (also referred to as network segments), each segment having a corresponding transmission medium. FIG. 1 illustrates a conventional local area network (LAN) including a multi-port bridge 20. The multi-port bridge 20 in this example has eight ports A-H, though the number of ports can vary. Each port A-H is connected to a segment 21-28 of the LAN. Each segment 21-28 typically includes one or more nodes 29-44, such as a workstation, a personal computer, a data terminal, a file server, a printer, a scanner, a modem, a facsimile or other conventional digital device. Each of the nodes 29-44 has an associated node address which uniquely identifies the node. The nodes 29-44 are configured to send data, one to another, in the form of discrete data packets.
When the LAN operates according to Ethernet standards, such as the Institute of Electrical and Electronics Engineers (IEEE) 802.3 standard, data is communicated in the form of discrete packets. FIG. 2 illustrates a conventional IEEE 802.3 data packet 50. The data packet 50 includes an eight byte long pre-amble 51 which is generally utilized for synchronizing a receiver to the data packet 50. The pre-amble 51 includes seven bytes of preamble and one byte of start-of-frame. Following the preamble 51, the data packet 50 includes a six byte long destination address 52, which is the node address of a node which is an intended recipient for the data packet 50. Next, the data packet 50 includes a six byte long source address 53, which is the node address of a node which originated the data packet 50. Following the source address 53 is a two-byte length field 54. Following the length field 54 is a data field 55. The data field 55 can be up to 1500 bytes long. Finally, the data packet 50 includes a four-byte frame check field 55 which allows a recipient of the data packet 50 to determine whether an error has occurred during transmission of the data packet 50.
When a node (source node) sends data to another node (destination node) located on its same segment of the LAN (intra-segment communication), the data is communicated directly between the nodes without intervention by the multi-port bridge 20 and is known as an intrasegment packet. Therefore, when the multi-port bridge 20 receives an intra-segment packet, the multi-port bridge 20 does not bridge the packet (the packet is filtered). When a node (source node) sends a data packet to another node (destination node) located on a different segment (inter-segment communication), the multi-port bridge 20 appropriately forwards the data packet to the destination node.
The multi-port bridge 20 (FIG. 1) receives each data packet 50 (FIG. 2) and must determine whether the data packet 50 is for intra-segment communication or inter-segment communication, and if the data packet 50 is for inter-segment communication, the multi-port bridge 20 must determine which port (destination port) the data packet 50 is to be directed based upon the destination address 52 contained in the data packet 50. This can be accomplished utilizing a look-up table. Conventionally, the look-up table is constructed by executing a learning phase for each received data packet 50 to store data in the table and by executing a look-up phase for each received data packet 50 to look-up data stored during the learning phase for a prior packet.
Once the look-up is performed, however, the packets need to be appropriately filtered. Therefore, what is needed is improved technique for filtering packets in a multi-port bridge for a local area network thereby preventing a source port from becoming a destination port for a packet.